import { getOffsetByCanvas } from "./utils"
/**
 * 判断两个div是否有交集
 * @param {*} div1 
 * @param {*} div2 
 */
export function getDivIsIntersection(div1, div2){
  const getOffset = (key)=> getOffsetByCanvas(document.getElementById(key))
  const {
    key: key1,
    width: width1,
    height: height1
  } = div1
  const {
    offsetLeft: left1,
    offsetTop: top1
  } = getOffset(key1)
  const {
    key: key2,
    width: width2,
    height: height2
  } = div2
  const {
    offsetLeft: left2,
    offsetTop: top2
  } = getOffset(key2)

  // 判断两个矩形是否重叠,需满足以下条件
  // 前置条件: 两个矩形的边均与x或y轴平行
  // 1. 一个矩形位于另一个矩形的上边缘上方
  // 2. 一个矩形位于另一个矩形的左边缘左侧
  return Math.abs((left2 + width2) - (width1 + left1)) + Math.abs(left2 - left1) < (width1 + width2) &&
    Math.abs((top2 + height2) - (height1 + top1)) + Math.abs(top2 - top1) < (height1 + height2)

}